# Copyright (C) 2001  The Bochs Project
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA


.SUFFIXES: .cc

srcdir = .

top_builddir    = ..
top_srcdir      = ..

SHELL = /bin/bash



CXX = g++
CXXFLAGS = -g -O2 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES  $(X_CFLAGS)

LDFLAGS = -pthread
LIBS = 
RANLIB = ranlib


# ===========================================================
# end of configurable options
# ===========================================================


BX_OBJS = \
  dis_decode.o \
  dis_groups.o \
  resolve.o    \
  syntax.o

BX_INCLUDES = disasm.h

BX_INCDIRS = -I.. -I$(srcdir)/.. -I../instrument/stubs -I$(srcdir)/../instrument/stubs

all: libdisasm.a

.cc.o:
	$(CXX) -c $(BX_INCDIRS) $(CXXFLAGS) $< -o $@



libdisasm.a: $(BX_OBJS)
	rm -f  libdisasm.a
	ar rv $@ $(BX_OBJS)
	$(RANLIB) libdisasm.a

$(BX_OBJS): $(BX_INCLUDES)


clean:
	rm -f  *.o
	rm -f  *.a

dist-clean: clean
	rm -f  Makefile

###########################################
# dependencies generated by
#  gcc -MM -I.. -I../instrument/stubs *.cc | sed 's/\.cc/.cc/g'
###########################################
dis_decode.o: dis_decode.cc disasm.h ../config.h dis_tables.h opcodes.inc \
              dis_tables.inc dis_tables_x87.inc dis_tables_sse.inc dis_tables_avx.inc dis_tables_xop.inc
dis_groups.o: dis_groups.cc disasm.h ../config.h
resolve.o: resolve.cc disasm.h ../config.h
syntax.o: syntax.cc disasm.h ../config.h
